Today's computer systems are often mobile. In mobile computer systems, the control of the computer system may be split up between a main processor and a mobile system controller. The mobile system controller may control a dynamic memory and a cache.
Such mobile computer systems are generally powered by batteries at least some of the time. Users expect to use their mobile computer for a long time without recharging the batteries. Today's mobile computer systems extend battery life by creating more powerful batteries and/or by decreasing power consumption of the mobile computer system. One method of decreasing the power consumption of the computer system is to have a power management mode.
A power management mode is a state in which the power consumption of the computer system is decreased. One known prior art power management mode is referred to herein as "suspend." The suspend mode may refer to a number of different states in which power consumption is reduced. However, for the purposes of this application, suspend mode refers to a state in which the primary system clock is turned off. Because the primary system clock is a high frequency clock, having a frequency in the range of 66 MHz, this results in considerable power savings. Suspend allows the computer to "go to sleep," a state in which power consumption is significantly decreased. When the computer is "woken up" from the suspend ode; it is in the same condition as it was prior to suspend. For example, if a muser is working on a word processing document when the computer goes to sleep, when the computer wakes up, it displays the same word processing document. Such information is generally stored in dynamic memory, i.e. memory that needs to be refreshed periodically. Logic that is operational during the suspend mode is used to refresh the dynamic memory and exit the suspend mode. This logic is referred to herein as suspend logic. Logic that is not operational during the suspend mode is referred to herein as normal logic.
Suspend mode is initiated by an external signal or an internal status. One prior art method of maintaining memory in a suspend mode is to have a separate clock and power connections connected to the memory that needs to be maintained and the suspend logic that maintains the memory. When the computer enters a suspend mode, the main power connection is isolated from the computer, and the main clock is stopped. A secondary power connection and a slow system clock are used to maintain the suspend logic and the memory. The slow system clock is used to indicate the refresh time. To generate the refresh cycles a faster clock is needed. In normal mode, the primary system clock is used. During suspend, instead of using the primary system clock, a slower internal oscillator is used. Exit from the suspend mode is initiated by an external signal or an internal state.
During suspend mode the power consumption of the computer system is very important. One of the components that consume power are the clocks. Driving the clock or oscillator uses power. Additionally, CMOS logic consumes power if it has a free running clock connected to it. Shutting off the clock reduces the power consumption substantially. Because the internal ring oscillator oscillates at a relatively high frequency, the oscillator and logic use a considerable amount of power. In the prior art, the power consumption of the computer system is in the range of 2-6 mW in deep suspend mode. Thus, even a small reduction, in the order of one or two milliwatts increases the battery life significantly.
Therefore, what is needed is a method and apparatus to decrease power consumption of a computer system in a suspend mode by decreasing the time during which the internal oscillator operates.